package com.hivekion.goods.domain;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.gitee.sunchenbin.mybatis.actable.annotation.ColumnComment;
import com.gitee.sunchenbin.mybatis.actable.annotation.ColumnType;
import com.gitee.sunchenbin.mybatis.actable.constants.MySqlTypeConstant;
import com.hivekion.common.entity.BaseEntity;
import lombok.Data;

import java.util.Date;

/**
 * 商品表
 */
@Data
@TableName("ele_good")
public class GoodEntity extends BaseEntity {
    @TableField
    @ColumnType(value = MySqlTypeConstant.VARCHAR, length = 250)
    @ColumnComment("照片")
    private String pic;
    @TableField
    @ColumnType(value = MySqlTypeConstant.VARCHAR, length = 250)
    @ColumnComment("商品名称")
    private String name;
    @TableField
    @ColumnType(value = MySqlTypeConstant.VARCHAR, length = 250)
    @ColumnComment("商品分类")
    private String goodClass;
    @TableField
    @ColumnType(value = MySqlTypeConstant.VARCHAR, length = 250)
    @ColumnComment("商品编号")
    private String code;
    @TableField
    @ColumnType(value = MySqlTypeConstant.DATETIME)
    @ColumnComment("过期日期")
    private Date expirationDate;
    @TableField
    @ColumnType(value = MySqlTypeConstant.INT)
    @ColumnComment("单点不配送")
    private Integer singlePointNonDelivery;
    @TableField
    @ColumnType(value = MySqlTypeConstant.INT)
    @ColumnComment("商品类别")
    private Integer goodType;
    @TableField
    @ColumnType(value = MySqlTypeConstant.VARCHAR, length = 250)
    @ColumnComment("描述")
    private String goodDescribe;
    @TableField
    @ColumnType(value = MySqlTypeConstant.VARCHAR, length = 250)
    @ColumnComment("主料")
    private String ingredients;
    @TableField
    @ColumnType(value = MySqlTypeConstant.VARCHAR, length = 250)
    @ColumnComment("口味")
    private String taste;
    @TableField
    @ColumnType(value = MySqlTypeConstant.INT)
    @ColumnComment("制作时长")
    private Integer productionTime;
    @TableField
    @ColumnType(value = MySqlTypeConstant.VARCHAR, length = 2500)
    @ColumnComment("商品规格")
    private String specifications;
    @TableField
    @ColumnType(value = MySqlTypeConstant.VARCHAR, length = 2500)
    @ColumnComment("商品属性")
    private String goodAtributes;
    @TableField
    @ColumnType(value = MySqlTypeConstant.DECIMAL)
    @ColumnComment("价格")
    private double price;
    @TableField
    @ColumnType(value = MySqlTypeConstant.INT)
    @ColumnComment("库存数量")
    private Integer inventory;
    @TableField
    @ColumnType(value = MySqlTypeConstant.DECIMAL)
    @ColumnComment("打包费")
    private double packingCharge;
    @TableField
    @ColumnType(value = MySqlTypeConstant.INT)
    @ColumnComment("是否限时限时")
    private Integer limitedTimeSale;
    @TableField
    @ColumnType(value = MySqlTypeConstant.INT)
    @ColumnComment("是否限量供应")
    private Integer ration;
    @TableField
    @ColumnType(value = MySqlTypeConstant.INT)
    @ColumnComment("是否新品")
    private Integer isNew;
    @TableField
    @ColumnType(value = MySqlTypeConstant.INT)
    @ColumnComment("是否促销")
    private Integer isPromotion;
    @TableField
    @ColumnType(value = MySqlTypeConstant.VARCHAR, length = 50)
    @ColumnComment("版本号")
    private String version;
    @TableField
    @ColumnType(value = MySqlTypeConstant.INT)
    @ColumnComment("上架状态")
    private Integer listingStatus;

    @TableField
    @ColumnType(value = MySqlTypeConstant.VARCHAR, length = 50)
    @ColumnComment("店铺id")
    private String shopId;
}
